// Copyright 2016 The Fuchsia Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

#include <hid/hid.h>

keychar_t qwerty_map[] = {
    // 0x00
    {}, {}, {}, {},
    // 0x04
    {'a', 'A'}, {'b', 'B'}, {'c', 'C'}, {'d', 'D'},
    // 0x08
    {'e', 'E'}, {'f', 'F'}, {'g', 'G'}, {'h', 'H'},
    // 0x0c
    {'i', 'I'}, {'j', 'J'}, {'k', 'K'}, {'l', 'L'},
    // 0x10
    {'m', 'M'}, {'n', 'N'}, {'o', 'O'}, {'p', 'P'},
    // 0x14
    {'q', 'Q'}, {'r', 'R'}, {'s', 'S'}, {'t', 'T'},
    // 0x18
    {'u', 'U'}, {'v', 'V'}, {'w', 'W'}, {'x', 'X'},
    // 0x1c
    {'y', 'Y'}, {'z', 'Z'}, {'1', '!'}, {'2', '@'},
    // 0x20
    {'3', '#'}, {'4', '$'}, {'5', '%'}, {'6', '^'},
    // 0x24
    {'7', '&'}, {'8', '*'}, {'9', '('}, {'0', ')'},
    // 0x28
    {}, {}, {}, {},
    // 0x2c
    {' ', ' '}, {'-', '_'}, {'=','+'}, {'[', '{'},
    // 0x30
    {']', '}'}, {'\\', '|'}, {}, {';', ':'},
    // 0x34
    {'\'', '"'}, {'`', '~'}, {',', '<'}, {'.', '>'},
    // 0x38
    {'/', '?'}, {}, {}, {},
    // 0x3c
    {}, {}, {}, {},
    // 0x40
    {}, {}, {}, {},
    // 0x44
    {}, {}, {}, {},
    // 0x48
    {}, {}, {}, {},
    // 0x4c
    {}, {}, {}, {},
    // 0x50
    {}, {}, {}, {},
    // 0x54
    {'/', 0}, {'*', 0}, {'-', 0}, {'+', 0},
    // 0x58
    {}, {'1', 0}, {'2', 0},  {'3', 0},
    // 0x5c
    {'4', 0}, {'5', 0}, {'6', 0}, {'7', 0},
    // 0x60
    {'8', 0}, {'9', 0}, {'0', 0}, {'.', 0},
};

keychar_t dvorak_map[] = {
    // 0x00
    {}, {}, {}, {},
    // 0x04
    {'a', 'A'}, {'x', 'X'}, {'j', 'J'}, {'e', 'E'},
    // 0x08
    {'.', '>'}, {'u', 'U'}, {'i', 'I'}, {'d', 'D'},
    // 0x0c
    {'c', 'C'}, {'h', 'H'}, {'t', 'T'}, {'n', 'N'},
    // 0x10
    {'m', 'M'}, {'b', 'B'}, {'r', 'R'}, {'l', 'L'},
    // 0x14
    {'\'', '"'}, {'p', 'P'}, {'o', 'O'}, {'y', 'Y'},
    // 0x18
    {'g', 'G'}, {'k', 'K'}, {',', '<'}, {'q', 'Q'},
    // 0x1c
    {'f', 'F'}, {';', ':'}, {'1', '!'}, {'2', '@'},
    // 0x20
    {'3', '#'}, {'4', '$'}, {'5', '%'}, {'6', '^'},
    // 0x24
    {'7', '&'}, {'8', '*'}, {'9', '('}, {'0', ')'},
    // 0x28
    {}, {}, {}, {},
    // 0x2c
    {' ', ' '}, {'[', '{'}, {']','}'}, {'/', '?'},
    // 0x30
    {'=', '+'}, {'\\', '|'}, {}, {'s', 'S'},
    // 0x34
    {'-', '_'}, {'`', '~'}, {'w', 'W'}, {'v', 'V'},
    // 0x38
    {'z', 'Z'}, {}, {}, {},
    // 0x3c
    {}, {}, {}, {},
    // 0x40
    {}, {}, {}, {},
    // 0x44
    {}, {}, {}, {},
    // 0x48
    {}, {}, {}, {},
    // 0x4c
    {}, {}, {}, {},
    // 0x50
    {}, {}, {}, {},
    // 0x54
    {'/', 0}, {'*', 0}, {'-', 0}, {'+', 0},
    // 0x58
    {}, {'1', 0}, {'2', 0},  {'3', 0},
    // 0x5c
    {'4', 0}, {'5', 0}, {'6', 0}, {'7', 0},
    // 0x60
    {'8', 0}, {'9', 0}, {'0', 0}, {'.', 0},
};
